package com.xayy.mgt.model;

import cn.kawins.mybatis.base.BaseModel;
import cn.kawins.mybatis.util.SnowflakeId;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import tk.mybatis.mapper.annotation.KeySql;

import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.Table;
import lombok.*;

/**
 * 节点所属分系统对应遥测表名称关联信息中间表
 *
 * @author zhangxa
 * @since 2023-08-25 17:28:45
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
@Table(name = "health_xw.t_system_telemetry_info")
@EqualsAndHashCode(callSuper = true)
public class SystemTelemetryInfo extends BaseModel<Long> {
    /**
     * 主键ID
     */
    @Id
    @ApiModelProperty(value = "主键")
    @Column(name = "id")
    @KeySql(genId = SnowflakeId.class)
    @JsonSerialize(using = ToStringSerializer.class)
    private Long id;
    /**
     * 卫星ID
     */
    @Column(name = "satellite_id")
    @ApiModelProperty(value = "卫星ID")
    private Long satelliteId;
    /**
     * 节点ID
     */
    @Column(name = "system_id")
    @ApiModelProperty(value = "节点ID")
    private Long systemId;
    /**
     * 参数名
     */
    @Column(name = "system_name")
    @ApiModelProperty(value = "分系统名称")
    private String systemName;

    /**
     * 遥测代号
     */
    @Column(name = "telemetry_table_name")
    @ApiModelProperty(value = "分系统对应遥测参数表名")
    private String telemetryTableName;

}
